#ifndef __COLLADA_GL_MESH_H__
#define __COLLADA_GL_MESH_H__

#include <vector>
#include <string>

class ColladaGLMesh
{
    public:
        enum PrimitiveType
        { 
            LINES,
            LINE_STRIPS,
            POLYGONS,
            POLYLIST,
            TRIANGLES,
            TRIFANS,
            TRISTRIPS,
        };

        struct Primitive
        {
            PrimitiveType type;
            std::vector<unsigned int> positionIndices;
            std::vector<unsigned int> normalIndices;
            std::vector<unsigned int> colorIndices;
            std::vector<unsigned int> uvIndices;
            std::string material;
        };

        ColladaGLMesh (void);
        virtual ~ColladaGLMesh (void);

    private:
        std::vector<Primitive> primitives;
};

#endif

